package com.Blog.www.dao;


import com.Blog.www.po.BlogComment;

import java.util.List;

/**
 * 博客评论相关的dao操作
 *
 * @author 君未洋
 */
public interface CommentDao {

    /**
     * 博客评论添加到数据库
     *
     * @param bid     博客id
     * @param uid     用户id
     * @param comment 评论内容
     * @return 返回是否添加成功
     */
    boolean addComment(String bid, String uid, String comment);

    /**
     * 通过博客id查询对应的所有评论
     *
     * @param id    博客id
     * @param prior 博客回复的前驱
     * @return 返回博客评论的集合
     */
    List<BlogComment> getCommentList(int id, int prior);

    /**
     * 删除数据库对应博客回复方法
     *
     * @param cid 评论id
     * @return 返回成功与否
     */
    boolean delete(String cid);


    /**
     * 在sql索引评论封装对象的方法
     *
     * @param id 评论的id
     * @return 返回封装对象
     */
    BlogComment getComment(int id);


    /**
     * 添加博客回复类
     *
     * @param bid     博客id
     * @param uid     用户id
     * @param cid     被回复的评论id
     * @param comment 回复的内容
     * @return 返回操作的成功与否
     */
    boolean addReply(String bid, String uid, String cid, String comment);


    /**
     * 获取所有对应博客id的评论总数
     *
     * @param id 博客id
     * @return 评论集合
     */
    int findCommentTotalCount(String id);

    /**
     * 查询对应文章的集合用
     *
     * @param start 开始查询的地址
     * @param rows  每页显示的数目
     * @param bid   博客id
     * @return 返回文章集合
     */
    List<BlogComment> findCommentList(int start, int rows, String bid);
}
